package main


import (
	"fmt"
	myproto "goTestToMod/grpc/proto"
	"google.golang.org/protobuf/proto"
	"goTestToMod/grpc/biu"
)

func Str2DEC(s string) (num int) {
	l := len(s)
	for i := l - 1; i >= 0; i-- {
		num += (int(s[l-i-1]) - 48) << uint8(i)
	}
	return
}

func main(){
	msg := myproto.DecodePrinciple{
		Id: 91890,
	}
	// proto 编码
	bt, _ := proto.Marshal(&msg)
	fmt.Println(bt)
	// byte 转为 二进制 bite
	s := biu.BytesToBinaryString(bt)
	fmt.Println(s)

	s = "10110011011110010"
	fmt.Println(Str2DEC(s)) // Str2DEC 二进制字符串转为 十进制 整形

	//[00001000 11110010 11001101 00000101]
	// 0 0001 000 || 0表示解析到本字节 || 0001 表示 id 为 1 || 000 表示类型为 int32
	//11110010 11001101 00000101
	//11110010 11001101 00000101 解析（去掉最高位倒序）后：10110011011110010 解析为：91890
}